Parameter Menu Scripts
Attribute Fields
Number Fields (Floats & Integers)
result = ["",""]
try:
geo = hou.pwd().inputs()[0].geometry()
attribs = geo.pointAttribs()
if attribs is not None:
result = []
for attr in attribs:
if attr.dataType() != hou.attribData.String and attr.size() == 1 and not attr.isArrayType():
result.append(attr.name())
result.append(attr.name())
finally: return result
Float Fields
result = ["",""]
geo = hou.pwd().inputs()[0].geometry()
if geo is not None:
attribs = geo.pointAttribs()
if attribs is not None:
result = []
for attr in attribs:
if attr.dataType() == hou.attribData.Float and attr.size() == 1:
result.append(attr.name())
result.append(attr.name())
return result
Integer Fields
result = ["",""]
geo = hou.pwd().inputs()[0].geometry()
if geo is not None:
attribs = geo.pointAttribs()
if attribs is not None:
result = []
for attr in attribs:
if attr.dataType() == hou.attribData.Int and attr.size() == 1:
result.append(attr.name())
result.append(attr.name())
return result
String Fields
result = ["",""]
geo = hou.pwd().inputs()[0].geometry()
if geo is not None:
attribs = geo.pointAttribs()
if attribs is not None:
result = []
for attr in attribs:
if attr.dataType() == hou.attribData.String and attr.size() == 1:
result.append(attr.name())
result.append(attr.name())
return result
Vector Fields
result = ["",""]
geo = hou.pwd().inputs()[0].geometry()
if geo is not None:
attribs = geo.pointAttribs()
if attribs is not None:
result = []
for attr in attribs:
if attr.dataType() != hou.attribData.String and attr.size() > 1:
result.append(attr.name())
result.append(attr.name())
return result
Group Fields
result = ["",""]
geo = hou.pwd().inputs()[0].geometry()
if geo is not None:
groups = geo.pointGroups()
if groups is not None:
result = []
for group in groups:
result.append(group.name())
result.append(group.name())
return result